package com.ruoyi.comment.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 评论管理对象 sys_comment
 * 
 * @author zzzyh
 * @date 2025-09-16
 */
public class SysComment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    public String getArticleTitle() {
        return articleTitle;
    }

    public void setArticleTitle(String articleTitle) {
        this.articleTitle = articleTitle;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickName) {
        this.nickname = nickName;
    }

    /** 评论主键ID，自增唯一标识 */
    private Long id;

    /** 评论文章 */
    @Excel(name = "评论文章")
    private Long articleId;

    /** 发布用户 */
    @Excel(name = "发布用户")
    private Long userId;

    /** 被回复用户 */
    @Excel(name = "被回复用户")
    private Long replyUserId;

    /** 父评论ID，用于实现回复评论的层级结构，若为顶级评论则为NULL */
    private Long parentId;

    /** 评论内容 */
    @Excel(name = "评论内容")
    private String content;

    /** 点赞数 */
    private Long likeCount;

    /** 是否置顶 */
    private Long isStick;

    /** ip */
    private String ip;

    /** 浏览器 */
    private String browser;

    /** 系统 */
    private String system;

    /** ip来源 */
    @Excel(name = "ip来源")
    private String ipSource;

    private String articleTitle;
    private String nickname;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setArticleId(Long articleId) 
    {
        this.articleId = articleId;
    }

    public Long getArticleId() 
    {
        return articleId;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setReplyUserId(Long replyUserId) 
    {
        this.replyUserId = replyUserId;
    }

    public Long getReplyUserId() 
    {
        return replyUserId;
    }

    public void setParentId(Long parentId) 
    {
        this.parentId = parentId;
    }

    public Long getParentId() 
    {
        return parentId;
    }

    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }

    public void setLikeCount(Long likeCount) 
    {
        this.likeCount = likeCount;
    }

    public Long getLikeCount() 
    {
        return likeCount;
    }

    public void setIsStick(Long isStick) 
    {
        this.isStick = isStick;
    }

    public Long getIsStick() 
    {
        return isStick;
    }

    public void setIp(String ip) 
    {
        this.ip = ip;
    }

    public String getIp() 
    {
        return ip;
    }

    public void setBrowser(String browser) 
    {
        this.browser = browser;
    }

    public String getBrowser() 
    {
        return browser;
    }

    public void setSystem(String system) 
    {
        this.system = system;
    }

    public String getSystem() 
    {
        return system;
    }

    public void setIpSource(String ipSource) 
    {
        this.ipSource = ipSource;
    }

    public String getIpSource() 
    {
        return ipSource;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("articleId", getArticleId())
            .append("userId", getUserId())
            .append("replyUserId", getReplyUserId())
            .append("parentId", getParentId())
            .append("content", getContent())
            .append("likeCount", getLikeCount())
            .append("isStick", getIsStick())
            .append("ip", getIp())
            .append("browser", getBrowser())
            .append("system", getSystem())
            .append("ipSource", getIpSource())
            .append("createTime", getCreateTime())
            .toString();
    }
}
